﻿using System;
using System.Data;
using System.Windows.Forms;
using SiGeCoPre.Presupuesto_BL;
using SiGeCoPre.Presupuesto_Factory;

namespace SiGeCoPre.Presupuesto_ViewGeneral
{
    /// <summary>
    /// Formulario para elegir empleados
    /// </summary>
    public partial class frmEmpleados : Form
    {
        static BLEmpleados createEmpleado = BLFactoryPresupuesto.createEmpleado();
        static DataTable tablaEmpleados = createEmpleado.getTablaEmpleados();
        static string usuario;

        public frmEmpleados()
        {
            InitializeComponent();
        }

        private void frmEmpleados_Load(object sender, EventArgs e)
        {
            if (null != tablaEmpleados)
            {
                foreach (DataRow  dr in tablaEmpleados.Rows)
                {
                    clbEmpleado.Items.Add(dr["Apellido"].ToString() + " " + dr["Nombre1"].ToString() + " - " + dr["Usuario"].ToString());
                }
            }
        }

        private bool verificar()
        {
            bool verificado = false;

            if (clbEmpleado.CheckedItems.Count != 1)
            {
                errorProvider1.SetError(clbEmpleado, "Seleccione un sólo Empleado");
            }
            else
            {
                errorProvider1.SetError(clbEmpleado, String.Empty);
                verificado = true;
            }

            return verificado;
        }

        private void btnAsignar_Click(object sender, EventArgs e)
        {
            if (verificar())
            {
                usuario = clbEmpleado.Text.Split('-')[1].Trim();
                this.Close();
                this.Dispose();
            }
        }

        /// <summary>
        /// Intercambia el usuario del empleado
        /// </summary>
        /// <returns>Devuelve el usuario del empleado seleccionado</returns>
        public static string pasarUsuario()
        {
            return usuario;
        }
    }
}
